The present invention is directed in general to computation methods for practice on distributed processing systems, and, more specifically, to a method for histogramming of pixel values on a distributed processing system. Distributed processing system is used herein to describe a system in which a plurality of independent, interconnected, arithmetical-logical processor elements operate in parallel to form a multiplicity of processing functions. The processors of the system are, typically, substantially identical to one another. The processors are preferably interconnected in a manner enabling communication between any pair of processors. In one type of parallel processing system known in the art as a single instruction multiple data (SIMD) system, a single sequence of instructions is provided to all processors. That is, all processors simultaneously perform operations in accordance with the same sequence of instructions. However, each processor may be performing the operations dictated by the instructions on different sets of data.
The individual processors of a SIMD parallel processing system typically have dedicated memory which may be loaded with data on which instructed operations can be performed. Also, each processor can read and write information at another processor. Thus, there is a flexibility in the operations performed by each processor insofar as derives from varying the data upon which each processor operates.
Various types of computations are well suited for processing on a distributed processing system. Generally, image processing problems represent one class of computations especially well suited for such processing. This is in part because of the usually large amount of data that requires processing. The image data requiring processing is typically composed of data elements each including a picture element (pixel) value. Each pixel value may comprise one or more data fields representing gray shade or color value. By processing such image data on a distributed processing system, computational operations may be performed in parallel on all of the data elements. The overall speed with which the computation proceeds is thereby enhanced.
As is known in the art, some image processing operations, such as image enhancement, include as an early step the histogramming of pixel values. Histogramming as used herein is simply the counting of the number of times each different pixel value occurs. There exists a need for a method by which to efficiently compute such histograms of pixel values on a distributed processing system.
It is therefore a principal object of the present invention to provide an efficient method for the histogramming of pixel values on a distributed processing system.